using System;
using System.Web;

namespace AUSRIS.Reports.Extensions.Security.Authentication
{
	public interface IAuthenticationProvider
	{
		/// <summary>
		/// Returns the username of an authenticated user.
		/// </summary>
		string GetUsername(HttpContext context);
		
		/// <summary>
		/// Gets the url to redirect to for authentication services.
		/// </summary>
		string GetRedirectUrl(HttpContext context);
		
		/// <summary>
		/// Returns a boolean indicating the the provider is to 
		/// be used with the standard Username/Password Login UI.
		/// </summary>
		bool IsUIEnabled
		{
			get;
		}
	}
}